<?php
//todo 这里应该读取所有的表格，然后循环修改里面的项目


$new_database_update_version = '202501181053';


//20241025 增加setting，用于记录更新信息。更新过了就不再更新

//检查本数据库中是否存在表格

$_setting=select_one_line_all_items($table_Prefix."setting",'1=1');


if(!$_setting)
{

    $sql = "CREATE TABLE IF NOT EXISTS ".$table_Prefix."setting (
  `nid` int(11) NOT NULL,
  `last_database_update_version` varchar(225) DEFAULT '0',
  `date` timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8";

    $query = mysql_query($sql) or die ("error:".mysql_error());

    //这里插入一条默认的数据
    $_setting_insert="insert into ".$table_Prefix."setting (nid,last_database_update_version) values ('1','$new_database_update_version')";
    $result_setting_insert=mysql_query($_setting_insert);
}









//查看当前setting中的数据库补丁版本，和上面的更新不一致的时候，执行更新
//在最后要插入一个版本号，用于记录当前数据库的版本，下次更新时，对比，如果版本不一致，则执行更新
$_setting=select_one_line_all_items($table_Prefix."setting",'1=1');

if($new_database_update_version != $_setting['last_database_update_version'])
{



//修正detail表格
    $table_item_list = [
    'description',   'keyword',      'url',
    'model',         'introduce',    'name',
    'detail',        'local',        'hotsale',
    'discount',      'recommend',    'soldout',
    'publish',       'icon',         'image1',
    'image2',        'image3',       'image4',
    'image5',        'extend_img',   'banner',
    'link',          'mark',         'belong',
    'attachment',    'storage',      'negative',
    'positive',      'banner_term',  'video',
    'detail2',       'detail3',      'image6',
    'image7',        'image8',       'image9',
    'image10',       'en_name',      'short_desc',
    'introduce2',    'introduce3',   'erweima',
    'favorite',      'map_address',  'video_path',
    'video_time',    'video_img',    'video_path2',
    'video_time2',   'video_img2',   'danwei',
    'danwei2',       'target',       'offshelves',
    'unid',          'icon_alt'
];



    foreach ($table_item_list as $v)
    {
        mysql_query("ALTER TABLE ".$table_prefix."detail CHANGE `$v` `$v` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci");
    }




//修正detail表格数字类型的
$table_number_item_list = [
    'stock',
    'price',
    'memberprice',
    'discountprice',
    'markorder',
    'termorder',
    'neworder'
];


foreach ($table_number_item_list as $v)
{
    mysql_query("ALTER TABLE ".$table_prefix."detail CHANGE `$v` `$v` int(25)");
}








//修正detail 表格 timestamp
$table_item_timestamp_list = [
    'onsaletime',
    'inputtime',
    'modifytime'
];


foreach ($table_item_timestamp_list as $v)
{
    mysql_query("ALTER TABLE ".$table_prefix."detail CHANGE `$v` `$v` timestamp");
}






//设置默认值为0的字段
    $table_item_list_int_0 = [
        //这些要设置默认值
        'vip_term',
        'is_disabled',
        'views',
        'clickrate',
        'listorder'
    ];

    foreach ($table_item_list_int_0 as $v)
    {
        mysql_query("ALTER TABLE ".$table_prefix."detail MODIFY `$v` INT DEFAULT 0");
    }


    
    
    
    
//20240904更新在线客服，添加邮件电话
update_exists('`'.$dbName.'`.`'.$table_Prefix."online_service`" , '`email`' , 3);
update_exists('`'.$dbName.'`.`'.$table_Prefix."online_service`" , '`phone`' , 3);

//20241028为留言板增加备注
update_exists('`'.$dbName.'`.`'.$table_Prefix."gbook`" , '`remark`' , 3);

//为detail增加status状态，用于假删除
update_exists('`'.$dbName.'`.`'.$table_Prefix."detail`" , '`status`' , 3);

//20241231 增加网站介绍
update_exists('`'.$dbName.'`.`'.$table_Prefix."site`" , '`introduce`' , 3);










//这个更新最后的地方，插入一个版本号，用于记录当前数据库的版本，下次更新时，对比，如果版本不一致，则执行更新
$_setting_update_version="update ".$table_Prefix."setting set last_database_update_version='$new_database_update_version'";
$result_setting_update_version=mysql_query($_setting_update_version);
}



?>